﻿//3325. 字符至少出现 K 次的子字符串 I
//给你一个字符串 s 和一个整数 k，在 s 的所有子字符串中，请你统计并返回 至少有一个 字符 至少出现 k 次的子字符串总数。
//子字符串 是字符串中的一个连续、 非空 的字符序列。


class Solution {
public:
    int cnt[26] = { 0 };
    int K;
    bool check()
    {
        for (int i = 0; i < 26; i++)
        {
            if (cnt[i] == K)
                return true;
        }
        return false;
    }
    int numberOfSubstrings(string s, int k)
    {
        K = k;
        int left = 0, right = -1;
        int n = s.size();
        int ans = 0;
        for (right = 0; right < n; right++)
        {
            cnt[s[right] - 'a']++;
            while (check())
            {
                cnt[s[left++] - 'a']--;
            }
            ans += left;
        }
        return ans;
    }
};